package com.xuanyuanxinyu.utils.screen;

import android.content.Context;
import android.util.TypedValue;

import androidx.annotation.DimenRes;

/**
* @FileName:
* @Description: 尺寸工具
* @author ken.luo
* @date 2023/4/4
* @version V1.0
* @email 424533553@qq.com
*/
public class SizeTool {

    public static int pixToDp(float value, Context context) {
        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, value, context.getResources().getDisplayMetrics());
    }

    public static int dip2px(Context context, float dpValue) {
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (dpValue * scale + 0.5f);
    }

    public static float getTargetSize(Context context, @DimenRes int dimenId) {
        return context.getResources().getDimension(dimenId);
    }

    public static int getTargetSizeInt(Context context, @DimenRes int dimenId) {
        return context.getResources().getDimensionPixelSize(dimenId);
    }

    public static int getTargetSizeOffsetInt(Context context, @DimenRes int dimenId) {
        return context.getResources().getDimensionPixelOffset(dimenId);
    }

    public static float transTextSize(Context context, @DimenRes int dimenId) {
        final float scale = context.getResources().getDisplayMetrics().density;
        return getTargetSizeInt(context, dimenId) / scale;
    }
}
